void main() {
  slice1(1, 2);

  slice2(1);
  slice2(1, 2);

  slice3(1);
  slice3(1, end: 2, step: 2);
}

// 1. 必传参数  -必须传参
void slice1(int start, int end) {
  print("切片起始位置：$start,切片结束位置：$end");
}

// 2. 可选位置参数  -可以为空，可以设置默认值,按位置传参，跟书写位置有关
void slice2(int start, [int? end]) {
  print("切片起始位置：$start,切片结束位置：$end");
}

// 3. 可选命名参数  - 可以为空，可以设置默认值,按名称传参，跟书写位置无关
void slice3(int start, {int? end, int? step}) {
  print("切片起始位置：$start,切片结束位置：$end");
}
